package edu.xust.entity;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * @author 
 */
@JsonIgnoreProperties(value = {"handler","serialVersionUID"})
public class Drivers implements Serializable {
    /**
     * 主键
     */
    private String did;

    /**
     * 驾驶员姓名
     */
    private String dname;

    /**
     * 驾驶员电话
     */
    private String dphone;

    /**
     * 驾驶员意外保险时间
     */
    private Date daccident;

    /**
     * 驾驶员身份证
     */
    private String didentitycard;

    /**
     * 驾驶员身份证图片
     */
    private String dpicture;

    /**
     * 登记证审核时间
     */
    private Date daudittime;

    /**
     * 驾驶员登记证
     */
    private String dcertificate;

    /**
     * 登记证图片
     */
    private String dregistrationcertificate;

    /**
     * 登记证审核日期
     */
    private Date dauditdate;

    /**
     * 发布时间
     */
    private Date dpubdate;

    /**
     * 驾驶员管理表的状态
     */
    private String dreportstart;

    private List<Transportbills> transportbills;

    private static final long serialVersionUID = 1L;

    public String getDid() {
        return did;
    }

    public void setDid(String did) {
        this.did = did;
    }

    public String getDname() {
        return dname;
    }

    public void setDname(String dname) {
        this.dname = dname;
    }

    public String getDphone() {
        return dphone;
    }

    public void setDphone(String dphone) {
        this.dphone = dphone;
    }

    public Date getDaccident() {
        return daccident;
    }

    public void setDaccident(Date daccident) {
        this.daccident = daccident;
    }

    public String getDidentitycard() {
        return didentitycard;
    }

    public void setDidentitycard(String didentitycard) {
        this.didentitycard = didentitycard;
    }

    public String getDpicture() {
        return dpicture;
    }

    public void setDpicture(String dpicture) {
        this.dpicture = dpicture;
    }

    public Date getDaudittime() {
        return daudittime;
    }

    public void setDaudittime(Date daudittime) {
        this.daudittime = daudittime;
    }

    public String getDcertificate() {
        return dcertificate;
    }

    public void setDcertificate(String dcertificate) {
        this.dcertificate = dcertificate;
    }

    public String getDregistrationcertificate() {
        return dregistrationcertificate;
    }

    public void setDregistrationcertificate(String dregistrationcertificate) {
        this.dregistrationcertificate = dregistrationcertificate;
    }

    public Date getDauditdate() {
        return dauditdate;
    }

    public void setDauditdate(Date dauditdate) {
        this.dauditdate = dauditdate;
    }

    public Date getDpubdate() {
        return dpubdate;
    }

    public void setDpubdate(Date dpubdate) {
        this.dpubdate = dpubdate;
    }

    public String getDreportstart() {
        return dreportstart;
    }

    public void setDreportstart(String dreportstart) {
        this.dreportstart = dreportstart;
    }

    public List<Transportbills> getTransportbills() {
        return transportbills;
    }

    public void setTransportbills(List<Transportbills> transportbills) {
        this.transportbills = transportbills;
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        Drivers other = (Drivers) that;
        return (this.getDid() == null ? other.getDid() == null : this.getDid().equals(other.getDid()))
            && (this.getDname() == null ? other.getDname() == null : this.getDname().equals(other.getDname()))
            && (this.getDphone() == null ? other.getDphone() == null : this.getDphone().equals(other.getDphone()))
            && (this.getDaccident() == null ? other.getDaccident() == null : this.getDaccident().equals(other.getDaccident()))
            && (this.getDidentitycard() == null ? other.getDidentitycard() == null : this.getDidentitycard().equals(other.getDidentitycard()))
            && (this.getDpicture() == null ? other.getDpicture() == null : this.getDpicture().equals(other.getDpicture()))
            && (this.getDaudittime() == null ? other.getDaudittime() == null : this.getDaudittime().equals(other.getDaudittime()))
            && (this.getDcertificate() == null ? other.getDcertificate() == null : this.getDcertificate().equals(other.getDcertificate()))
            && (this.getDregistrationcertificate() == null ? other.getDregistrationcertificate() == null : this.getDregistrationcertificate().equals(other.getDregistrationcertificate()))
            && (this.getDauditdate() == null ? other.getDauditdate() == null : this.getDauditdate().equals(other.getDauditdate()))
            && (this.getDpubdate() == null ? other.getDpubdate() == null : this.getDpubdate().equals(other.getDpubdate()))
            && (this.getDreportstart() == null ? other.getDreportstart() == null : this.getDreportstart().equals(other.getDreportstart()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getDid() == null) ? 0 : getDid().hashCode());
        result = prime * result + ((getDname() == null) ? 0 : getDname().hashCode());
        result = prime * result + ((getDphone() == null) ? 0 : getDphone().hashCode());
        result = prime * result + ((getDaccident() == null) ? 0 : getDaccident().hashCode());
        result = prime * result + ((getDidentitycard() == null) ? 0 : getDidentitycard().hashCode());
        result = prime * result + ((getDpicture() == null) ? 0 : getDpicture().hashCode());
        result = prime * result + ((getDaudittime() == null) ? 0 : getDaudittime().hashCode());
        result = prime * result + ((getDcertificate() == null) ? 0 : getDcertificate().hashCode());
        result = prime * result + ((getDregistrationcertificate() == null) ? 0 : getDregistrationcertificate().hashCode());
        result = prime * result + ((getDauditdate() == null) ? 0 : getDauditdate().hashCode());
        result = prime * result + ((getDpubdate() == null) ? 0 : getDpubdate().hashCode());
        result = prime * result + ((getDreportstart() == null) ? 0 : getDreportstart().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", did=").append(did);
        sb.append(", dname=").append(dname);
        sb.append(", dphone=").append(dphone);
        sb.append(", daccident=").append(daccident);
        sb.append(", didentitycard=").append(didentitycard);
        sb.append(", dpicture=").append(dpicture);
        sb.append(", daudittime=").append(daudittime);
        sb.append(", dcertificate=").append(dcertificate);
        sb.append(", dregistrationcertificate=").append(dregistrationcertificate);
        sb.append(", dauditdate=").append(dauditdate);
        sb.append(", dpubdate=").append(dpubdate);
        sb.append(", dreportstart=").append(dreportstart);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}